#ifndef RENDER_PRIVATE_H
#define	RENDER_PRIVATE_H

#ifdef	__cplusplus
extern "C" {
#endif

    /**
     * @brief Display a specific sprite and all his children, recursively
     * @param Sprite * sprite - the sprite to display
     */
    void esdlRenderSprites(EsdlSprite* sprite);

    void _esdlRenderInit(EsdlRender* render);
    
    /**
     * Blit a sprite on the screen
     */
    void _esdlBlit(EsdlSprite* sprite);

    /**
     * @brief (Do not use this function) This function refresh the all screen and execute the renderer callback
     * @param void (*callback)(int) - the callback to execute before refresh the screen
     */
    void _esdlRenderScreen(EsdlRenderCallback callback);

#ifdef	__cplusplus
}
#endif

#endif	/* RENDER_PRIVATE_H */

